<template>
  <div id="app">
    <h1>根组件 --- {{ $store.state.user.userInfo.name }} </h1>
    <p>网站的标题: {{ $store.state.setting.title }}</p>
     <!-- 
      调用命名空间下的 mutations 方法: 
      1. 直接调用
        this.$store.commit('模块名/函数名')
      2. 辅助函数 (不推荐)
        ...mapMutations('模块名', ['函数名'])

      同理 actions 一样
      1. 直接调用
        this.$store.dispatch('模块名/函数名')
      2. 辅助函数 (不推荐)
        ...mapActions('模块名', ['函数名'])
     -->
    <button @click="$store.commit('user/test')">调用 user 的test</button>
    <button @click="$store.commit('setting/test')">调用 setting 的test</button>
    <button @click="test">调用辅助函数导入的test</button>
    <input type="text">
    <add-item></add-item>
    <hr>
    <sub-item></sub-item>
  </div>
</template>

<script>
import { mapMutations } from 'vuex'
import AddItem from './components/add-item.vue'
import SubItem from './components/sub-item.vue'

export default {
  name: 'app',
  data: function () {
    return {
      
    }
  },
  components: {
    AddItem,
    SubItem
  },
  methods:{
    ...mapMutations('user',['test'])
  }
}
</script>

<style>
#app {
  width: 600px;
  margin: 20px auto;
  border: 3px solid #ccc;
  border-radius: 3px;
  padding: 10px;
}
</style>